package cn.fl.customer.transform;

import java.util.ArrayList;
import java.util.List;

import cn.cmm.base.framework.utils.CollectionUtils;
import cn.fl.customer.vo.CstCorpBscInfoVO;
import fl.customer.facade.customer.dto.CstCorpBscInfoDTO;

 /**
 * @Description: 法人客户基础信息表 转换器
 * VO是客户端传递数据到服务端进行转换的数据 
 * VO转换数据变成DTO传递到服务端 
 * VO不能在服务端出现
 */
public class CstCorpBscInfoVOTransform {


	/**
	 * DTO 转  VO
	 * @param po CstCorpBscInfoDTO
	 * @return CstCorpBscInfoVO
	 */
	public static CstCorpBscInfoVO toVO(CstCorpBscInfoDTO dto) {
		CstCorpBscInfoVO  vo = null;
		if (dto != null) { 
			vo = new CstCorpBscInfoVO();
			vo.setId(dto.getId());
			vo.setTaxRegNo(dto.getTaxRegNo());//税务登记号
			vo.setCorpTypCd(dto.getCorpTypCd());//企业性质（CST0010）
			vo.setBizLicNo(dto.getBizLicNo());//营业执照注册号
			vo.setRegDt(dto.getRegDt());//成立日期
			vo.setExpDt(dto.getExpDt());//有效日期
			vo.setRegCapAmt(dto.getRegCapAmt());//注册资本
			vo.setRegCapUntCd(dto.getRegCapUntCd());//注册资本计量单位（CST0011）
			vo.setPaidCapAmt(dto.getPaidCapAmt());//实收资本
			vo.setPaidCapUntCd(dto.getPaidCapUntCd());//实收资本计量单位（CST0011）
			vo.setWebsit(dto.getWebsit());//公司网站
			vo.setBizScope(dto.getBizScope());//经营范围
			vo.setZipNo(dto.getZipNo());//通讯地址邮编
			vo.setOfficeAddr(dto.getOfficeAddr());//办公地址
			vo.setRegAddr(dto.getRegAddr());//注册地址
			vo.setPostAddr(dto.getPostAddr());//通讯地址
			vo.setOthInfo(dto.getOthInfo());//其他信息
			vo.setIsDel(dto.getIsDel());//是否删除（1：是，0：否）
			vo.setShtNm(dto.getShtNm());//公司简称
			vo.setSucc(dto.getSucc());//社会统一信用代码
			vo.setCorpTax(dto.getCorpTax());//企业传真
			vo.setEmpQtyCd(dto.getEmpQtyCd());//员工数量
			vo.setRegTel(dto.getRegTel());//注册电话
			vo.setCorpTypCdNm(dto.getCorpTypCdNm());
			vo.setRegCapUntCdNm(dto.getRegCapUntCdNm());
			vo.setEmpQtyCdNm(dto.getEmpQtyCdNm());
			vo.setPaidCapUntCdNm(dto.getPaidCapUntCdNm());
			vo.setOfficeTel(dto.getOfficeTel());
			vo.setBuOrgCd(dto.getBuOrgCd());
			vo.setOrgCd(dto.getOrgCd());
			vo.setOfficeArea(dto.getOfficeArea());
			vo.setPrpAttr(dto.getPrpAttr());
			vo.setLoanCardNo(dto.getLoanCardNo());
			vo.setLoanCardPwd(dto.getLoanCardPwd());
			vo.setLoanAss(dto.getLoanAss());
			vo.setIsInst(dto.getIsInst());
			vo.setPerMitNo(dto.getPerMitNo());
			vo.setLoanCardCd(dto.getLoanCardCd());
			vo.setRegProvCd(dto.getRegProvCd());
			vo.setRegCityCd(dto.getRegCityCd());
			vo.setRegDistCd(dto.getRegDistCd());
			vo.setStdIndCd(dto.getStdIndCd());
			vo.setIsInstNm(dto.getIsInstNm());
			vo.setRegProvCdNm(dto.getRegProvCdNm());
			vo.setRegCityCdNm(dto.getRegCityCdNm());
			vo.setRegDistCdNm(dto.getRegDistCdNm());
			vo.setStdIndCdNm(dto.getStdIndCdNm());
			vo.setCstCorpTeamVO(CstCorpTeamVOTransform.toVO(dto.getCstCorpTeamDTO()));
			vo.setPrpVal(dto.getPrpVal());
			vo.setCrtTm(dto.getCrtTm());//创建时间
			vo.setCrtUsrId(dto.getCrtUsrId());//创建人
			vo.setMdfTm(dto.getMdfTm());//修改时间
			vo.setMdfUsrId(dto.getMdfUsrId());//修改人
			vo.setBorrowerfeature(dto.getBorrowerfeature());
			vo.setHoldSituationCd(dto.getHoldSituationCd());
		}
		return vo;
	}

	/**
	 * VO 转 DTO
	 * @param dto CstCorpBscInfoVO
	 * @return CstCorpBscInfoDTO
	 */
	public static CstCorpBscInfoDTO toDTO(CstCorpBscInfoVO vo) {
		CstCorpBscInfoDTO dto = null;
		if (vo != null) {
			dto = new CstCorpBscInfoDTO();
			dto.setId(vo.getId());
			dto.setTaxRegNo(vo.getTaxRegNo());//税务登记号
			dto.setCorpTypCd(vo.getCorpTypCd());//企业性质（CST0010）
			dto.setBizLicNo(vo.getBizLicNo());//营业执照注册号
			dto.setRegDt(vo.getRegDt());//成立日期
			dto.setExpDt(vo.getExpDt());//有效日期
			dto.setRegCapAmt(vo.getRegCapAmt());//注册资本
			dto.setRegCapUntCd(vo.getRegCapUntCd());//注册资本计量单位（CST0011）
			dto.setPaidCapAmt(vo.getPaidCapAmt());//实收资本
			dto.setPaidCapUntCd(vo.getPaidCapUntCd());//实收资本计量单位（CST0011）
			dto.setWebsit(vo.getWebsit());//公司网站
			dto.setBizScope(vo.getBizScope());//经营范围
			dto.setZipNo(vo.getZipNo());//通讯地址邮编
			dto.setOfficeAddr(vo.getOfficeAddr());//办公地址
			dto.setRegAddr(vo.getRegAddr());//注册地址
			dto.setPostAddr(vo.getPostAddr());//通讯地址
			dto.setOthInfo(vo.getOthInfo());//其他信息
			dto.setIsDel(vo.getIsDel());//是否删除（1：是，0：否）
			dto.setShtNm(vo.getShtNm());//公司简称
			dto.setSucc(vo.getSucc());//社会统一信用代码
			dto.setCorpTax(vo.getCorpTax());//企业传真
			dto.setEmpQtyCd(vo.getEmpQtyCd());//员工数量
			dto.setRegTel(vo.getRegTel());//注册电话
			dto.setCorpTypCdNm(vo.getCorpTypCdNm());
			dto.setRegCapUntCdNm(vo.getRegCapUntCdNm());
			dto.setEmpQtyCdNm(vo.getEmpQtyCdNm());
			dto.setPaidCapUntCdNm(vo.getPaidCapUntCdNm());
			dto.setOfficeTel(vo.getOfficeTel());
			dto.setBuOrgCd(vo.getBuOrgCd());
			dto.setOrgCd(vo.getOrgCd());
			dto.setOfficeArea(vo.getOfficeArea());
			dto.setPrpAttr(vo.getPrpAttr());
			dto.setLoanCardNo(vo.getLoanCardNo());
			dto.setLoanCardPwd(vo.getLoanCardPwd());
			dto.setLoanAss(vo.getLoanAss());
			dto.setIsInst(vo.getIsInst());
			dto.setPerMitNo(vo.getPerMitNo());
			dto.setLoanCardCd(vo.getLoanCardCd());
			dto.setRegProvCd(vo.getRegProvCd());
			dto.setRegCityCd(vo.getRegCityCd());
			dto.setRegDistCd(vo.getRegDistCd());
			dto.setStdIndCd(vo.getStdIndCd());
			
			dto.setIsInstNm(vo.getIsInstNm());
			dto.setRegProvCdNm(vo.getRegProvCdNm());
			dto.setRegCityCdNm(vo.getRegCityCdNm());
			dto.setRegDistCdNm(vo.getRegDistCdNm());
			dto.setStdIndCdNm(vo.getStdIndCdNm());
			dto.setCstCorpTeamDTO(CstCorpTeamVOTransform.toDTO(vo.getCstCorpTeamVO()));
			dto.setPrpVal(vo.getPrpVal());
			dto.setCrtTm(vo.getCrtTm());//创建时间
			dto.setCrtUsrId(vo.getCrtUsrId());//创建人
			dto.setMdfTm(vo.getMdfTm());//修改时间
			dto.setMdfUsrId(vo.getMdfUsrId());//修改人
			dto.setBorrowerfeature(vo.getBorrowerfeature());
			dto.setHoldSituationCd(vo.getHoldSituationCd());
		}
		return dto;
	}
	
	/**
	 * DTO集合 转 VO集合
	 * @param list List<CstCorpBscInfo>
	 * @return List<CstCorpBscInfoDTO>
	 */
	public static List<CstCorpBscInfoVO> toVOList(List<CstCorpBscInfoDTO> list) {
		List<CstCorpBscInfoVO>  voList = new ArrayList<CstCorpBscInfoVO>();
		if(CollectionUtils.isNotEmpty(list)){
			for (CstCorpBscInfoDTO dto : list) {
				voList.add(toVO(dto));
			}
		}
		return voList;
	}
}
